Expander Graph
   HOME

TheInfoList



OR:

In
graph theory In mathematics, graph theory is the study of ''graphs'', which are mathematical structures used to model pairwise relations between objects. A graph in this context is made up of '' vertices'' (also called ''nodes'' or ''points'') which are conne ...
, an expander graph is a
sparse graph In mathematics, a dense graph is a graph in which the number of edges is close to the maximal number of edges (where every pair of vertices is connected by one edge). The opposite, a graph with only a few edges, is a sparse graph. The distinction ...
that has strong
connectivity Connectivity may refer to: Computing and technology * Connectivity (media), the ability of the social media to accumulate economic capital from the users connections and activities * Internet connectivity, the means by which individual terminal ...
properties, quantified using
vertex Vertex, vertices or vertexes may refer to: Science and technology Mathematics and computer science *Vertex (geometry), a point where two or more curves, lines, or edges meet * Vertex (computer graphics), a data structure that describes the positio ...
,
edge Edge or EDGE may refer to: Technology Computing * Edge computing, a network load-balancing system * Edge device, an entry point to a computer network * Adobe Edge, a graphical development application * Microsoft Edge, a web browser developed by ...
or
spectral ''Spectral'' is a 2016 3D military science fiction, supernatural horror fantasy and action-adventure thriller war film directed by Nic Mathieu. Written by himself, Ian Fried, and George Nolfi from a story by Fried and Mathieu. The film stars ...
expansion. Expander constructions have spawned research in pure and applied mathematics, with several applications to complexity theory, design of robust
computer network A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are ...
s, and the theory of
error-correcting code In computing, telecommunication, information theory, and coding theory, an error correction code, sometimes error correcting code, (ECC) is used for controlling errors in data over unreliable or noisy communication channels. The central idea is ...
s.


Definitions

Intuitively, an expander graph is a finite, undirected
multigraph In mathematics, and more specifically in graph theory, a multigraph is a graph which is permitted to have multiple edges (also called ''parallel edges''), that is, edges that have the same end nodes. Thus two vertices may be connected by more ...
in which every subset of the vertices that is not "too large" has a "large"
boundary Boundary or Boundaries may refer to: * Border, in political geography Entertainment *Boundaries (2016 film), ''Boundaries'' (2016 film), a 2016 Canadian film *Boundaries (2018 film), ''Boundaries'' (2018 film), a 2018 American-Canadian road trip ...
. Different formalisations of these notions give rise to different notions of expanders: ''edge expanders'', ''vertex expanders'', and ''spectral expanders'', as defined below. A disconnected graph is not an expander, since the boundary of a connected component is empty. Every connected graph is an expander; however, different connected graphs have different expansion parameters. The
complete graph In the mathematical field of graph theory, a complete graph is a simple undirected graph in which every pair of distinct vertices is connected by a unique edge. A complete digraph is a directed graph in which every pair of distinct vertices is c ...
has the best expansion property, but it has largest possible
degree Degree may refer to: As a unit of measurement * Degree (angle), a unit of angle measurement ** Degree of geographical latitude ** Degree of geographical longitude * Degree symbol (°), a notation used in science, engineering, and mathematics ...
. Informally, a graph is a good expander if it has low degree and high expansion parameters.


Edge expansion

The ''edge expansion'' (also ''isoperimetric number'' or
Cheeger constant In Riemannian geometry, the Cheeger isoperimetric constant of a compact Riemannian manifold ''M'' is a positive real number ''h''(''M'') defined in terms of the minimal area of a hypersurface that divides ''M'' into two disjoint pieces. In 1970, J ...
) of a graph on vertices is defined as : h(G) = \min_ \frac, :where \partial S := \, which can also be written as with the complement of and : E(A,B) = \ the edges between the subsets of vertices . In the equation, the minimum is over all nonempty sets of at most vertices and is the ''edge boundary'' of , i.e., the set of edges with exactly one endpoint in . Intuitively, : \min = \min E(, \overline) is the minimum number of edges that need to be cut in order to split the graph in two. The edge expansion normalizes this concept by dividing with smallest number of vertices among the two parts. To see how the normalization can drastically change the value, consider the following example. Take two complete graphs with the same number of vertices and add edges between the two graphs by connecting their vertices one-to-one. The minimum cut will be but the edge expansion will be 1. Notice that in , the optimization can be equivalently done either over or over any non-empty subset, since . The same is not true for because of the normalization by . If we want to write with an optimization over all non-empty subsets, we can rewrite it as : h(G) = \min_ \frac.


Vertex expansion

The ''vertex isoperimetric number'' (also ''vertex expansion'' or ''magnification'') of a graph is defined as : h_(G) = \min_ \frac, where is the ''outer boundary'' of , i.e., the set of vertices in with at least one neighbor in . In a variant of this definition (called ''unique neighbor expansion'') is replaced by the set of vertices in with ''exactly'' one neighbor in . The ''vertex isoperimetric number'' of a graph is defined as : h_(G) = \min_ \frac, where \partial_(S) is the ''inner boundary'' of , i.e., the set of vertices in with at least one neighbor in .


Spectral expansion

When is -regular, a
linear algebra Linear algebra is the branch of mathematics concerning linear equations such as: :a_1x_1+\cdots +a_nx_n=b, linear maps such as: :(x_1, \ldots, x_n) \mapsto a_1x_1+\cdots +a_nx_n, and their representations in vector spaces and through matrices. ...
ic definition of expansion is possible based on the
eigenvalues In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denoted b ...
of the
adjacency matrix In graph theory and computer science, an adjacency matrix is a square matrix used to represent a finite graph. The elements of the matrix indicate whether pairs of vertices are adjacent or not in the graph. In the special case of a finite simp ...
of , where is the number of edges between vertices and . Because is
symmetric Symmetry (from grc, συμμετρία "agreement in dimensions, due proportion, arrangement") in everyday language refers to a sense of harmonious and beautiful proportion and balance. In mathematics, "symmetry" has a more precise definiti ...
, the
spectral theorem In mathematics, particularly linear algebra and functional analysis, a spectral theorem is a result about when a linear operator or matrix (mathematics), matrix can be Diagonalizable matrix, diagonalized (that is, represented as a diagonal matrix i ...
implies that has real-valued eigenvalues . It is known that all these eigenvalues are in and more specifically, it is known that if and only if is bipartite. More formally, we refer to an -vertex, -regular graph with :\max_, \lambda_i, \leq \lambda as an -''graph''. The bound given by an -graph on for is useful many contexts, including the
expander mixing lemma The expander mixing lemma intuitively states that the edges of certain d-regular graphs are evenly distributed throughout the graph. In particular, the number of edges between two vertex subsets S and T is always close to the expected number of edge ...
. Because is regular, the uniform distribution u\in\R^n with for all is the
stationary distribution Stationary distribution may refer to: * A special distribution for a Markov chain such that if the chain starts with its stationary distribution, the marginal distribution of all states at any time will always be the stationary distribution. Assum ...
of . That is, we have , and is an
eigenvector In linear algebra, an eigenvector () or characteristic vector of a linear transformation is a nonzero vector that changes at most by a scalar factor when that linear transformation is applied to it. The corresponding eigenvalue, often denoted b ...
of with eigenvalue , where is the
degree Degree may refer to: As a unit of measurement * Degree (angle), a unit of angle measurement ** Degree of geographical latitude ** Degree of geographical longitude * Degree symbol (°), a notation used in science, engineering, and mathematics ...
of the vertices of . The ''
spectral gap In mathematics, the spectral gap is the difference between the moduli of the two largest eigenvalues of a matrix or operator; alternately, it is sometimes taken as the smallest non-zero eigenvalue. Various theorems relate this difference to othe ...
'' of is defined to be , and it measures the spectral expansion of the graph . If we set :\lambda=\max\ as this is the largest eigenvalue corresponding to an eigenvector
orthogonal In mathematics, orthogonality is the generalization of the geometric notion of ''perpendicularity''. By extension, orthogonality is also used to refer to the separation of specific features of a system. The term also has specialized meanings in ...
to , it can be equivalently defined using the
Rayleigh quotient In mathematics, the Rayleigh quotient () for a given complex Hermitian matrix ''M'' and nonzero vector ''x'' is defined as: R(M,x) = . For real matrices and vectors, the condition of being Hermitian reduces to that of being symmetric, and the co ...
: :\lambda=\max_ \frac, where :\, v\, _2=\left(\sum_^n v_i^2\right)^ is the 2-norm of the vector v\in\R^n. The normalized versions of these definitions are also widely used and more convenient in stating some results. Here one considers the matrix , which is the
Markov transition matrix In mathematics, a stochastic matrix is a square matrix used to describe the transitions of a Markov chain. Each of its entries is a nonnegative real number representing a probability. It is also called a probability matrix, transition matrix ...
of the graph . Its eigenvalues are between −1 and 1. For not necessarily regular graphs, the spectrum of a graph can be defined similarly using the eigenvalues of the Laplacian matrix. For
directed graph In mathematics, and more specifically in graph theory, a directed graph (or digraph) is a graph that is made up of a set of vertices connected by directed edges, often called arcs. Definition In formal terms, a directed graph is an ordered pa ...
s, one considers the
singular values In mathematics, in particular functional analysis, the singular values, or ''s''-numbers of a compact operator T: X \rightarrow Y acting between Hilbert spaces X and Y, are the square roots of the (necessarily non-negative) eigenvalues of the self- ...
of the adjacency matrix , which are equal to the roots of the eigenvalues of the symmetric matrix .


Relationships between different expansion properties

The expansion parameters defined above are related to each other. In particular, for any -regular graph , :h_(G) \le h(G) \le d \cdot h_(G). Consequently, for constant degree graphs, vertex and edge expansion are qualitatively the same.


Cheeger inequalities

When is -regular, meaning each vertex is of degree , there is a relationship between the isoperimetric constant and the gap in the spectrum of the adjacency operator of . By standard spectral graph theory, the trivial eigenvalue of the adjacency operator of a -regular graph is and the first non-trivial eigenvalue is . If is connected, then . An inequality due to Dodziuk and independently
Alon Alon or ALON may refer to: * Alon (name), an Israeli given name and surname * Alon, Mateh Binyamin, an Israeli settlement in the West Bank * Alon Inc, an American airplane builder, known for the Alon A-4 * Alon USA, an American energy company * Alu ...
and Milman states that : \tfrac(d - \lambda_2) \le h(G) \le \sqrt. In fact, the lower bound is tight. The lower bound is achieved in limit for the
hypercube In geometry, a hypercube is an ''n''-dimensional analogue of a square () and a cube (). It is a closed, compact, convex figure whose 1- skeleton consists of groups of opposite parallel line segments aligned in each of the space's dimensions, ...
, where and . The upper bound is (asymptotically) achieved for a cycle, where and . A better bound is given in as : h(G) \le \sqrt. These inequalities are closely related to the
Cheeger bound In mathematics, the Cheeger bound is a bound of the second largest eigenvalue of the transition matrix of a finite-state, discrete-time, reversible stationary Markov chain. It can be seen as a special case of Cheeger inequalities in expander graph ...
for
Markov chains A Markov chain or Markov process is a stochastic process, stochastic model describing a sequence of possible events in which the probability of each event depends only on the state attained in the previous event. Informally, this may be thought ...
and can be seen as a discrete version of Cheeger's inequality in
Riemannian geometry Riemannian geometry is the branch of differential geometry that studies Riemannian manifolds, smooth manifolds with a ''Riemannian metric'', i.e. with an inner product on the tangent space at each point that varies smoothly from point to poin ...
. Similar connections between vertex isoperimetric numbers and the spectral gap have also been studied: : h_(G)\le \left(\sqrt + 1\right)^2 -1 : h_(G) \le \sqrt. Asymptotically speaking, the quantities , , and are all bounded above by the spectral gap .


Constructions

There are three general strategies for explicitly constructing families of expander graphs. The first strategy is algebraic and group-theoretic, the second strategy is analytic and uses
additive combinatorics Additive combinatorics is an area of combinatorics in mathematics. One major area of study in additive combinatorics are ''inverse problems'': given the size of the sumset ''A'' + ''B'' is small, what can we say about the structures of A ...
, and the third strategy is combinatorial and uses the
zig-zag A zigzag is a pattern made up of small corners at variable angles, though constant within the zigzag, tracing a path between two parallel lines; it can be described as both jagged and fairly regular. In geometry, this pattern is described as a ...
and related graph products.
Noga Alon Noga Alon ( he, נוגה אלון; born 17 February 1956) is an Israeli mathematician and a professor of mathematics at Princeton University noted for his contributions to combinatorics and theoretical computer science, having authored hundreds of ...
showed that certain graphs constructed from finite geometries are the sparsest examples of highly expanding graphs.


Margulis–Gabber–Galil

Algebraic constructions based on
Cayley graph In mathematics, a Cayley graph, also known as a Cayley color graph, Cayley diagram, group diagram, or color group is a graph that encodes the abstract structure of a group. Its definition is suggested by Cayley's theorem (named after Arthur Cay ...
s are known for various variants of expander graphs. The following construction is due to Margulis and has been analysed by Gabber and Galil. For every natural number , one considers the graph with the vertex set \mathbb Z_n \times \mathbb Z_n, where \mathbb Z_n=\mathbb Z/n\mathbb Z: For every vertex (x,y)\in\mathbb Z_n \times \mathbb Z_n, its eight adjacent vertices are :(x \pm 2y,y), (x \pm (2y+1),y), (x,y \pm 2x), (x,y \pm (2x+1)). Then the following holds:
Theorem. For all , the graph has second-largest eigenvalue \lambda(G)\leq 5 \sqrt.


Ramanujan graphs

By a theorem of Alon and Boppana, all sufficiently large -regular graphs satisfy \lambda_2 \ge 2\sqrt - o(1), where is the second largest eigenvalue in absolute value. As a direct consequence, we know that for every fixed and \lambda< 2 \sqrt , there are only finitely many -graphs.
Ramanujan graph In the mathematical field of spectral graph theory, a Ramanujan graph is a regular graph whose spectral gap is almost as large as possible (see extremal graph theory). Such graphs are excellent spectral expanders. AMurty's survey papernotes, Ramanu ...
s are -regular graphs for which this bound is tight, satisfying :\lambda = \max_ , \lambda_i, \le 2\sqrt. Hence Ramanujan graphs have an asymptotically smallest possible value of . This makes them excellent spectral expanders. Lubotzky, Phillips, and Sarnak (1988), Margulis (1988), and Morgenstern (1994) show how Ramanujan graphs can be constructed explicitly. In 1985, Alon, conjectured that most -regular graphs on vertices, for sufficiently large , are almost Ramanujan. That is, for , they satisfy :\lambda \le 2\sqrt+\varepsilon. In 2003, Joel Friedman both proved the conjecture and specified what is meant by "most -regular graphs" by showing that random -regular graphs have \lambda \le 2\sqrt+\varepsilon for every with probability , where :\tau = \left\lceil\frac \right\rceil.


Zig-Zag product

Reingold, Vadhan, and Wigderson introduced the zig-zag product in 2003. Roughly speaking, the zig-zag product of two expander graphs produces a graph with only slightly worse expansion. Therefore, a zig-zag product can also be used to construct families of expander graphs. If is a -graph and is an -graph, then the zig-zag product is a -graph where has the following properties. # If and , then ; # . Specifically, :f(\lambda_1, \lambda_2)=\frac(1-\lambda^2_2)\lambda_2 +\frac\sqrt. Note that property (1) implies that the zig-zag product of two expander graphs is also an expander graph, thus zig-zag products can be used inductively to create a family of expander graphs. Intuitively, the construction of the zig-zag product can be thought of in the following way. Each vertex of is blown up to a "cloud" of vertices, each associated to a different edge connected to the vertex. Each vertex is now labeled as where refers to an original vertex of and refers to the th edge of . Two vertices, and are connected if it is possible to get from to through the following sequence of moves. # ''Zig'' - Move from to , using an edge of . # Jump across clouds using edge in to get to . # ''Zag'' - Move from to using an edge of .


Randomized constructions

There are many results that show the existence of graphs with good expansion properties through probabilistic arguments. In fact, the existence of expanders was first proved by Pinsker who showed that for a randomly chosen vertex left regular
bipartite graph In the mathematical field of graph theory, a bipartite graph (or bigraph) is a graph whose vertices can be divided into two disjoint and independent sets U and V, that is every edge connects a vertex in U to one in V. Vertex sets U and V are ...
, for all subsets of vertices with high probability, where is a constant depending on that is . Alon and Roichman showed that for every group of order and every , there is some such that the Cayley graph on with generators is an expander, i.e. has second eigenvalue less than , with high probability.


Applications and useful properties

The original motivation for expanders is to build economical robust networks (phone or computer): an expander with bounded degree is precisely an asymptotic robust graph with the number of edges growing linearly with size (number of vertices), for all subsets. Expander graphs have found extensive applications in
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
, in designing
algorithm In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algorithms are used as specificat ...
s,
error correcting codes In computing, telecommunication, information theory, and coding theory, an error correction code, sometimes error correcting code, (ECC) is used for controlling errors in data over unreliable or noisy communication channels. The central idea is ...
, extractors,
pseudorandom generator In theoretical computer science and cryptography, a pseudorandom generator (PRG) for a class of statistical tests is a deterministic procedure that maps a random seed to a longer pseudorandom string such that no statistical test in the class ...
s,
sorting network In computer science, comparator networks are abstract devices built up of a fixed number of "wires", carrying values, and comparator modules that connect pairs of wires, swapping the values on the wires if they are not in a desired order. Such net ...
s () and robust
computer network A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are ...
s. They have also been used in proofs of many important results in
computational complexity theory In theoretical computer science and mathematics, computational complexity theory focuses on classifying computational problems according to their resource usage, and relating these classes to each other. A computational problem is a task solved by ...
, such as SL =  L () and the PCP theorem (). In
cryptography Cryptography, or cryptology (from grc, , translit=kryptós "hidden, secret"; and ''graphein'', "to write", or ''-logia'', "study", respectively), is the practice and study of techniques for secure communication in the presence of adver ...
, expander graphs are used to construct
hash function A hash function is any function that can be used to map data of arbitrary size to fixed-size values. The values returned by a hash function are called ''hash values'', ''hash codes'', ''digests'', or simply ''hashes''. The values are usually u ...
s. In
2006 survey of expander graphs
Hoory, Linial, and Wigderson split the study of expander graphs into four categories:
extremal problem In mathematics, particularly in calculus, a stationary point of a differentiable function of one variable is a point on the graph of the function where the function's derivative is zero. Informally, it is a point where the function "stops" in ...
s, typical behavior, explicit constructions, and algorithms. Extremal problems focus on the bounding of expansion parameters, while typical behavior problems characterize how the expansion parameters are distributed over
random graph In mathematics, random graph is the general term to refer to probability distributions over graphs. Random graphs may be described simply by a probability distribution, or by a random process which generates them. The theory of random graphs li ...
s. Explicit constructions focus on constructing graphs that optimize certain parameters, and algorithmic questions study the evaluation and estimation of parameters.


Expander mixing lemma

The expander mixing lemma states that for an -graph, for any two subsets of the vertices , the number of edges between and is approximately what you would expect in a random -regular graph. The approximation is better the smaller is. In a random -regular graph, as well as in an Erdős–Rényi random graph with edge probability , we expect edges between and . More formally, let denote the number of edges between and . If the two sets are not disjoint, edges in their intersection are counted twice, that is, : E(S,T)=2, E(G \cap T, + E(S\setminus T,T) + E(S,T\setminus S). Then the expander mixing lemma says that the following inequality holds: :\left, E(S, T) - \frac\ \leq \lambda \sqrt. Many properties of -graphs are corollaries of the expander mixing lemmas, including the following. * An independent set of a graph is a subset of vertices with no two vertices adjacent. In an -graph, an independent set has size at most . * The
chromatic number In graph theory, graph coloring is a special case of graph labeling; it is an assignment of labels traditionally called "colors" to elements of a graph subject to certain constraints. In its simplest form, it is a way of coloring the vertices o ...
of a graph , , is the minimum number of colors needed such that adjacent vertices have different colors. Hoffman showed that , while Alon, Krivelevich, and Sudakov showed that if , then

\chi(G) \leq O \left( \frac \right).

* The
diameter In geometry, a diameter of a circle is any straight line segment that passes through the center of the circle and whose endpoints lie on the circle. It can also be defined as the longest chord of the circle. Both definitions are also valid for ...
of a graph is the maximum distance between two vertices, where the distance between two vertices is defined to be the shortest path between them. Chung showed that the diameter of an -graph is at most

\left\lceil \log \frac \right\rceil.


Expander walk sampling

The
Chernoff bound In probability theory, the Chernoff bound gives exponentially decreasing bounds on tail distributions of sums of independent random variables. Despite being named after Herman Chernoff, the author of the paper it first appeared in, the result is d ...
states that, when sampling many independent samples from a random variables in the range , with high probability the average of our samples is close to the expectation of the random variable. The expander walk sampling lemma, due to and , states that this also holds true when sampling from a walk on an expander graph. This is particularly useful in the theory of derandomization, since sampling according to an expander walk uses many fewer random bits than sampling independently.


AKS sorting network and approximate halvers

Sorting networks take a set of inputs and perform a series of parallel steps to sort the inputs. A parallel step consists of performing any number of disjoint comparisons and potentially swapping pairs of compared inputs. The depth of a network is given by the number of parallel steps it takes. Expander graphs play an important role in the AKS sorting network, which achieves depth . While this is asymptotically the best known depth for a sorting network, the reliance on expanders makes the constant bound too large for practical use. Within the AKS sorting network, expander graphs are used to construct bounded depth -halvers. An -halver takes as input a length permutation of and halves the inputs into two disjoint sets and such that for each integer at most of the smallest inputs are in and at most of the largest inputs are in . The sets and are an -halving. Following , a depth -halver can be constructed as follows. Take an vertex, degree bipartite expander with parts and of equal size such that every subset of vertices of size at most has at least neighbors. The vertices of the graph can be thought of as registers that contain inputs and the edges can be thought of as wires that compare the inputs of two registers. At the start, arbitrarily place half of the inputs in and half of the inputs in and decompose the edges into perfect matchings. The goal is to end with roughly containing the smaller half of the inputs and containing roughly the larger half of the inputs. To achieve this, sequentially process each matching by comparing the registers paired up by the edges of this matching and correct any inputs that are out of order. Specifically, for each edge of the matching, if the larger input is in the register in and the smaller input is in the register in , then swap the two inputs so that the smaller one is in and the larger one is in . It is clear that this process consists of parallel steps. After all rounds, take to be the set of inputs in registers in and to be the set of inputs in registers in to obtain an -halving. To see this, notice that if a register in and in are connected by an edge then after the matching with this edge is processed, the input in is less than that of . Furthermore, this property remains true throughout the rest of the process. Now, suppose for some that more than of the inputs are in . Then by expansion properties of the graph, the registers of these inputs in are connected with at least registers in . Altogether, this constitutes more than registers so there must be some register in connected to some register in such that the final input of is not in , while the final input of is. This violates the previous property however, and thus the output sets and must be an -halving.


See also

*
Algebraic connectivity The algebraic connectivity (also known as Fiedler value or Fiedler eigenvalue after Miroslav Fiedler) of a graph ''G'' is the second-smallest eigenvalue (counting multiple eigenvalues separately) of the Laplacian matrix of ''G''. This eigenvalue i ...
*
Zig-zag product In graph theory, the zig-zag product of regular graphs G,H, denoted by G \circ H, is a binary operation which takes a large graph (G) and a small graph (H) and produces a graph that approximately inherits the size of the large one but the degree ...
* Superstrong approximation *
Spectral graph theory In mathematics, spectral graph theory is the study of the properties of a graph in relationship to the characteristic polynomial, eigenvalues, and eigenvectors of matrices associated with the graph, such as its adjacency matrix or Laplacian matrix ...


Notes


References


Textbooks and surveys

* * * * *


Research articles

* * * * . * . * . * * * *


Recent Applications

* {{Refend


External links


Brief introduction in Notices of the American Mathematical Society

Introductory paper by Michael Nielsen

Lecture notes from a course on expanders (by Nati Linial and Avi Wigderson)


* ttps://web.archive.org/web/20070523090323/http://www.yann-ollivier.org/specgraph/specgraph.html Definition and application of spectral gap Graph families